// 导入定义验证规则的包
const joi = require('joi')

// 定义用户和密码的验证规则
const username = joi.string().alphanum().min(1).max(10).required()
const password = joi.string().pattern(/^[\S]{6,12}$/).required()

// 定义 id,nickname,email的验证规则
const id = joi.number().integer().min().required()
const nickname = joi.string().required()
const email = joi.string().email().required()

// 定义 重置密码的验证规则
const oldPwd = password
const newPwd = joi.not(joi.ref('oldPwd')).concat(password)

// 定义 更新用户头像的验证规则
const avatar = joi.string().dataUri().required()

// 定义验证注册和登陆表单数据的规则对象
module.exports.reg_login_schema={
  body:{
    username,
    password
  }
}

// 定义验证规则对象-更新用户的基本信息
module.exports.update_userinfo_schema={
  body:{
    id,
    nickname,
    email
  }
}

// 定义验证规则对象-重置密码
module.exports.update_password_schema = {
  body:{
    oldPwd,
    newPwd
  }
}

// 定义验证规则对象-更新用户头像
module.exports.update_avatar_schema = {
  body:{
    avatar
  }
}